"""          
Time : 2024/6/4 下午5:34
Author : TJC
@FileName: run_test.py
@Desc: 测试用例执行
"""
import os
import pytest
from config.config import cm
from allure_des.allure_des import set_report_env_on_results, set_report_executer_on_results, \
    set_report_categories_on_results


def generate_allure_report():
    # 在json目录下创建categories.json文件
    set_report_categories_on_results()

    # 在json目录下创建environment.properties文件
    set_report_env_on_results()

    # 在json目录下创建executor.json文件
    set_report_executer_on_results()
    os.system(f"allure generate {cm.dir_report_json} -o {cm.dir_report_html} --clean")


def run_tests():
    """执行pytest测试并生成Allure报告"""
    pytest_args = ['-s', '-v', 'testcases', f'--alluredir={cm.dir_report_json}']
    pytest.main(pytest_args)
    generate_allure_report()


if __name__ == '__main__':
    run_tests()
